home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Deutsche Edition 1
/
Deutsche Edition 1.iso
/
amok
/
001-010
/
amok07
/
m2tests
/
testfilesystem.mod
< prev
next >
Wrap
Text File
|
1993-11-04
|
4KB
|
126 lines
(****************************************************************
* *
* :Program. TestFileSystem.mod *
* :Author. Michael Frieß *
* :Address. Kernerstr. 22a *
* :shortcut. [MiF] *
* :Version. 1.0 *
* :Date. 30.09.88 *
* :Copyright. PD *
* :Language. Modula-II *
* :Translator. M2Amiga *
* :Contents. Test of module FileSystem *
* *
****************************************************************)
MODULE TestFileSystem;
FROM SYSTEM IMPORT ADR;
FROM FileSystem IMPORT Lookup, Close, ReadByteBlock, ReadBytes,
WriteByteBlock, WriteBytes, File,
SetPos;
FROM Strings IMPORT Length;
FROM InOut IMPORT WriteInt, WriteString, WriteLn,
OpenOutput, CloseOutput;
TYPE String = ARRAY [1..10] OF CHAR;
PROCEDURE TestWriteByteBlock (str: String);
VAR f : File;
result: String;
act : LONGINT;
BEGIN
Lookup (f, "t:TestFileSystem.tmp", 0, TRUE);
WriteString (" PROCEDURE WriteByteBlock"); WriteLn;
WriteString (" block = "); WriteString (str); WriteLn;
WriteByteBlock (f, str);
Close (f);
Lookup (f, "t:TestFileSystem.tmp", 0, FALSE);
WriteString (" PROCEDURE ReadByteBlock"); WriteLn;
ReadByteBlock (f, result);
WriteString (" block = "); WriteString (result); WriteLn;
IF Length(result) = SIZE(result) THEN
WriteString ("Ergebnis ist korrekt.")
ELSE
WriteString ("FEHLER!!")
END;
WriteLn;
SetPos (f, 0);
WriteString (" PROCEDURE ReadBytes"); WriteLn;
ReadBytes (f, ADR(result), SIZE(result), act);
WriteString (" block = "); WriteString (result); WriteLn;
WriteString (" actual = "); WriteInt (act, 3); WriteLn;
IF act = SIZE(result) THEN
WriteString ("Ergebnis ist korrekt.")
ELSE
WriteString ("FEHLER!!")
END;
WriteLn;
Close (f);
END TestWriteByteBlock;
PROCEDURE TestWriteBytes (str: String);
VAR f : File;
result: String;
act : LONGINT;
BEGIN
Lookup (f, "t:TestFileSystem.tmp", 0, TRUE);
WriteString (" PROCEDURE WriteBytes"); WriteLn;
WriteString (" block = "); WriteString (str); WriteLn;
WriteBytes (f, ADR(str), SIZE(str), act);
IF act = SIZE(result) THEN
WriteString ("Ergebnis ist korrekt.")
ELSE
WriteString ("FEHLER!!")
END;
WriteLn;
Close (f);
Lookup (f, "t:TestFileSystem.tmp", 0, FALSE);
WriteString (" PROCEDURE ReadByteBlock"); WriteLn;
ReadByteBlock (f, result);
WriteString (" block = "); WriteString (result); WriteLn;
IF Length(result) = SIZE(result) THEN
WriteString ("Ergebnis ist korrekt.")
ELSE
WriteString ("FEHLER!!")
END;
WriteLn;
SetPos (f, 0);
WriteString (" PROCEDURE ReadBytes"); WriteLn;
ReadBytes (f, ADR(result), SIZE(result), act);
WriteString (" block = "); WriteString (result); WriteLn;
WriteString (" actual = "); WriteInt (act, 3); WriteLn;
IF act = SIZE(result) THEN
WriteString ("Ergebnis ist korrekt.")
ELSE
WriteString ("FEHLER!!")
END;
WriteLn;
Close (f);
END TestWriteBytes;
BEGIN
WriteString ("Nur Enter-Taste eingeben für Ausgabe auf Bildschirm!");
WriteLn;
WriteString ("Name der Ausgabedatei ");
OpenOutput ("Errors");
WriteString ("Test des Moduls FileSystem"); WriteLn;
WriteLn;
WriteString (" V3.11d: Prozedur WriteByteBlock fehlerhaft.");
WriteLn;
TestWriteByteBlock ("0123456789");
WriteLn;
WriteString (" V3.11d: Prozedur ReadByteBlock fehlerhaft.");
WriteLn;
TestWriteBytes ("0123456789");
CloseOutput;
WriteString ("Ende des Tests."); WriteLn
END TestFileSystem.